package transaction.service;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.PlatformTransactionManager;
import org.springframework.transaction.annotation.Transactional;
import transaction.dao.UserDao;

/**
 * @author： pang-yun
 * @date： 2021-12-03 10:28
 * 功能目的 ：用于
 */
@Service
public class UserService {
    @Autowired
    private UserDao userDao;

    @Transactional()
    public void transfer(){
//        try {
            // 1.开启事务


            //2.进行业务操作
            userDao.increase();
            // 转账操作 模拟异常 将会使一个账户增加 而另一个账户不会减少
            int i = 1/0;
            userDao.reduce();

            //3.无异常则 提交事务
//        } catch (Exception e) {
//            e.printStackTrace();
//            // 4.异常则进行事务回滚
//        }
    }


}
